package admin.controllers;

import java.io.IOException;
import java.net.URLDecoder;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import models.StaffModel;

import com.google.appengine.api.users.UserService;
import com.google.appengine.api.users.UserServiceFactory;

public class MessageServlet extends HttpServlet {
	public void doGet(HttpServletRequest request, HttpServletResponse response)
		throws IOException, ServletException {
		response.setCharacterEncoding("UTF-8");
		HttpSession session = request.getSession();
		
		UserService userService = UserServiceFactory.getUserService();
		String thisURL = request.getRequestURI();
		
		String path = ((HttpServletRequest) request).getRequestURI();
		String type = URLDecoder.decode(path.toLowerCase().replaceAll("/staff/msg/", ""),"UTF-8");
		String title = "Thông báo";
		String msg = "<a href=\"/home\">Trở về Trang Chủ</a>";
		
		if (type != null && type.equalsIgnoreCase("not-permission")) {
			msg = "Xin lỗi, bạn không đủ quyền để truy cập vào trang này! Bạn có thể quay lại hoặc trở về <a href=\"/home\">Trang Chủ</a>";
		}
		
		if (type != null && type.equalsIgnoreCase("page-not-found")) {
			title = "Trang không tồn tại.";
			msg = "Xin lỗi, trang bạn đang vào không tồn tại! Bạn có thể quay lại hoặc trở về <a href=\"/home\">Trang Chủ</a>";
		}
		
		if (type != null && type.equalsIgnoreCase("require-login")) {
			msg = "Trang bạn truy cập yêu cần vào hệ thống. Bạn có thể trở về trang trước hoặc đăng nhập <a href=\"/staff/login\">tại đây.</a>";
		}
		
		if (type != null && type.equalsIgnoreCase("login-success")) {
			if (session.getAttribute("staff_logged_in") != null) {
				StaffModel staff = (StaffModel) session.getAttribute("staff_logged_in");
				msg = "Bạn đã đăng nhập với tài khỏan '" + staff.getUsername() + "'. Bạn có thể đăng xuất <a href=\"/staff/logout\">tại đây.</a>";
			} else {
				msg = "Bạn cần đăng nhập <a href=\"/staff/login\">tại đây</a>";
			}
		}
		
		if (type != null && type.equalsIgnoreCase("logout-success")) {
			msg = "Bạn đã đăng xuất thành công. Bạn có thể đăng nhập lại <a href=\"/staff/login\">tại đây.</a>";
		}
		
		
		request.setAttribute("title", title);
		request.setAttribute("msg", msg);
		try {
			request.getRequestDispatcher("/admin/pages/message.jsp").forward(request, response);
		} catch (ServletException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}
